查看原文
其他

ChatGPT:GPT-4 真的变笨了?

lencx 浮之静 2023-09-24
🔗 论文摘要

How is ChatGPT's behavior changing over time?[1]

本研究评估了 2023 年 3 月和 6 月的 GPT-3.5 和 GPT-4 版本在四项任务上的性能:解决数学问题、回答敏感/危险问题、生成代码和视觉推理。研究发现,两种模型的性能和行为在不同时间的版本中存在显著变化。例如,2023 年 3 月的 GPT-4 在识别质数方面表现优异,但到了 6 月的版本,其性能大幅下滑。此外,随着时间的推移,GPT-4 和 GPT-3.5 在生成代码时的格式错误也增多,GPT-4 对回答敏感问题的意愿也有所下降。

此研究结果突出了持续监控大型语言模型(LLM)质量的重要性。研究者们关注的不仅仅是模型的绝对性能,还有其性能如何随着时间推移而变化。这些变化可能会对依赖这些模型的系统和应用产生重要影响,甚至可能导致系统运行错误。因此,了解这些变化并根据需要进行调整是至关重要的。

此外,虽然已经有许多研究对大型语言模型进行了基准测试和评估,但这些研究通常未对模型在时间上的性能变化进行系统性的监控。本研究填补了这一研究空白,为评估和监控大型语言模型的性能变化提供了重要的参考。

2023 年 3 月和 2023 年 6 月版本的 GPT-4 和 GPT-3.5 在四个任务上的表现:解决数学问题,回答敏感问题,生成代码和视觉推理。GPT-4 和 GPT-3.5 在不同时间点的表现可能会有很大的差异,并且在某些任务中可能会变得更差。
解决数学问题。(a):GPT-4 和 GPT-3.5 在 2023 年 3 月和 6 月之间的监测准确率、冗长程度(单位:字符)和答案重叠度。总体上,两个服务都存在较大的性能漂移。(b):一个示例查询及其随时间变化的响应。在 3 月份,GPT-4 按照思维链指令得出正确答案,但在 6 月份忽略了该指令,给出了错误答案。GPT-3.5 始终遵循思维链,但在 3 月份坚持先生成了错误答案([No])。这个问题在 6 月份基本上得到了修复
回答敏感问题。(a) 总体表现变化。从 3 月到 6 月,GPT-4 回答的问题数量减少了,而 GPT-3.5 回答的问题稍微增加了。(b) 一个示例查询及不同日期下 GPT-4 和 GPT-3.5 的响应。在 3 月份,GPT-4 和 GPT-3.5 都会冗长地给出为什么不回答该查询的详细解释。而在 6 月份,它们只是简单地说了抱歉。
代码生成。(a) 总体性能漂移。对于GPT-4,在 3 月份,可直接执行的生成比例从 52.0% 下降到 6 月份的 10.0%。对于 GPT-3.5,这个比例也从 22.0% 下降到 2.0%。GPT-4 生成的冗长程度,用生成代码中的字符数来衡量,也增加了 20%。(b) 一个示例查询及相应的响应。在 3 月份,GPT-4 和 GPT-3.5 都遵循用户的指令("the code only"),因此产生了可直接执行的代码生成。然而,在 6 月份,它们在代码片段前后添加了额外的三引号,导致代码无法执行。
视觉推理。(a) 总体表现。对于 GPT-4 和 GPT-3.5,从 3 月到 6 月,精确匹配率都有 2% 的改善。生成长度大致保持不变。在约 90% 的视觉推理查询中,从 3 月到 6 月,生成结果没有发生变化。(b) 一个示例查询及相应的响应。虽然总体上 GPT-4 随着时间的推移变得更好了,但在这个特定的查询上表现更差。它在 3 月份给出了正确的网格,但在 6 月份给出了错误的网格。
📌 大佬笔记

整理翻译自 @DrJimFan[2]

我们许多从业者都感觉到 GPT-4 随着时间的推移而退化。最近的一项研究证实了这一点。但为什么 GPT-4 会退化,我们可以从中学到什么?

  • 安全性与实用性的权衡:最近的研究显示,2023 年 6 月版本的 GPT-4 在处理敏感问题时比 3 月版本“更安全”,拒绝回答的比例从 21% 降到 5%。然而,增强安全性通常会牺牲实用性,可能导致认知技能下降。我猜测 OpenAI 可能在 3 月至 6 月期间主要集中精力提高模型的安全性,而没有足够的时间来完全恢复其他重要能力。

  • 安全性对齐导致代码过于冗长:研究显示,即使提示明确要求“只生成代码,不包含任何其他文本”,6 月版本的 GPT-4 还是倾向于加入无用的文本。这意味着从业者现在需要手动后处理输出结果以使其可执行,这在 LLM 软件堆栈中是一大麻烦。我认为这是安全性对齐的副作用。我们都见过 GPT 添加警告、免责声明(我不是专家,所以请咨询...)和后退(话虽这么说,尊重很重要...),通常是针对一个非常简单的答案。如果整个大脑都被调整为这样的行为,编码也会受到影响。

  • 成本削减:我们不能确定 6 月版本的 GPT-4 是否与 3 月版本具有完全相同的混合专家配置。有可能减少了参数数量、减少了专家数量,或者只有复杂的查询维持原有的计算成本,而简单的查询则路由到更小的专家。

  • 持续集成将成为 LLM 研发的重要主题:AI 领域正在努力赶上一般软件领域的常规操作。即使是这篇研究论文,也没有对 MMLU(Massive Multitask Language Understanding,🤗 开放式 LLM 排行榜)、数学和 HumanEval[3] 等基准测试进行全面的回归测试。它只研究了一个特定的素数检测问题。GPT-4 在处理三角学问题时会退步吗?其他推理任务呢?不同编程语言的代码质量和自我调试能力如何?

  • 开源赢得胜利:有趣的是,这篇研究论文和 LLaMA 2 (LLaMA 2:免费可商用的开源大语言模型)的发布时间相同。开源 LLM 没有这种神秘感。我们可以严格地对版本进行版本控制和追踪回归,作为一个社区,共同诊断并修复所有问题。

思考

依赖黑盒模型的成本很高,这让我想到了之前 swyx[4] 播客中提到的关于大模型版本的概念(了解更多 ChatGPT:Code Interpreter == GPT-4.5?),实施可靠的版本控制或许可以让大模型在商业化这条路上走得更远。

📌 依赖地狱

在软件管理的领域里存在着被称作“依赖地狱”的死亡之谷,系统规模越大,加入的包越多,你就越有可能在未来的某一天发现自己已深陷绝望之中。

在依赖高的系统中发布新版本包可能很快会成为噩梦。如果依赖关系过高,可能面临版本控制被锁死的风险(必须对每一个依赖包改版才能完成某次升级)。而如果依赖关系过于松散,又将无法避免版本的混乱(假设兼容于未来的多个版本已超出了合理数量)。当你项目的进展因为版本依赖被锁死或版本混乱变得不够简便和可靠,就意味着你正处于依赖地狱之中。


那我们应该如何给基础模型版本命名?对于研究人员来说,这是一个有些陌生的概念,他们可以随便训练 400 个没有名称的大型语言模型(LLMs)来证明一点,但随着 AI 工程师在这些模型之上构建产品和业务,这个问题变得越来越重要。

References

[1]

How is ChatGPT's behavior changing over time?: https://arxiv.org/abs/2307.09009

[2]

@DrJimFan: https://twitter.com/DrJimFan

[3]

HumanEval: https://paperswithcode.com/dataset/humaneval

[4]

swyx: https://www.swyx.io

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存